/*
 * Copyright (c) 2022  by Junzhao
 * THIS FILE IS PART OF JAVASE Song Huongkang PROJECT
 * All Rights Reserved.
 */

package Arrays工具类;

import org.junit.Test;

import java.util.Arrays;

public class ArraysTest {
    public static void main(String[] args) {

    }
    @Test
    public void test01(){
        int[] a,b,c,d=null,e=null,f;
        a=new int[]{1,2,3};
        b=new int[]{1,2,3};
        c=new int[]{0,1,2};
        f=new int[]{1,8,2,3};

        // boolean equals(int[] a, int[] a2)
        // 如果两个数组包含相同顺序的元素，那么它们就是相等的。
        // 另外，如果两个数组引用都为空，则认为它们是相等的。
        System.out.println(Arrays.equals(a, b));// true
        System.out.println(Arrays.equals(a, c));// false
        System.out.println(Arrays.equals(d, e));// true

        // String toString(int[] a)
        // 返回指定数组内容的字符串表示形式
        // 如果a为空，则返回“null”。
        System.out.println(Arrays.toString(a));// [1, 2, 3]
        System.out.println(Arrays.toString(d));// null

        // void fill(int[] a, int val)
        // 将指定的int值赋给指定的int数组中的每个元素。
        Arrays.fill(b,4);
        System.out.println(Arrays.toString(b));// [4, 4, 4]

        // void sort(int[] a)
        // 将指定的数组按数字升序排序。
        Arrays.sort(f);
        System.out.println(Arrays.toString(f));// [1, 2, 3, 8]

        // int binarySearch(int[] a, int key)
        // 在调用之前，数组必须排序(如sort(int[])方法)。
        // 如果没有排序，结果是未定义的。如果数组包含多个具有指定值的元素，则不能保证找到哪个元素。
        System.out.println(Arrays.binarySearch(f, 3));// 2

    }

}
